package com.ruoyi.system.service;

import java.util.List;
import com.ruoyi.system.domain.Major;

/**
 * 专业信息 服务层
 * 
 * @author ruoyi
 */
public interface IMajorService
{
    /**
     * 查询专业信息列表
     * 
     * @param major 专业信息
     * @return 专业信息集合
     */
    public List<Major> selectMajorList(Major major);

    /**
     * 查询所有专业
     * 
     * @return 专业列表
     */
    public List<Major> selectMajorAll();

    /**
     * 通过专业ID查询专业信息
     * 
     * @param majorId 专业ID
     * @return 专业对象信息
     */
    public Major selectMajorById(Long majorId);

    /**
     * 校验专业名称是否唯一
     * 
     * @param major 专业信息
     * @return 结果
     */
    public boolean checkMajorNameUnique(Major major);

    /**
     * 校验专业代码是否唯一
     * 
     * @param major 专业信息
     * @return 结果
     */
    public boolean checkMajorCodeUnique(Major major);

    /**
     * 新增保存专业信息
     * 
     * @param major 专业信息
     * @return 结果
     */
    public int insertMajor(Major major);

    /**
     * 修改保存专业信息
     * 
     * @param major 专业信息
     * @return 结果
     */
    public int updateMajor(Major major);

    /**
     * 删除专业信息
     * 
     * @param majorId 专业ID
     * @return 结果
     */
    public int deleteMajorById(Long majorId);

    /**
     * 批量删除专业信息
     * 
     * @param majorIds 需要删除的专业ID
     * @return 结果
     */
    public int deleteMajorByIds(Long[] majorIds);
} 